<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <div id="app">
    <h1>v-if和v-for一起使用</h1>
    <ul>
      <!-- 1.  -->
      <!-- 当同一个标签上面出现了v-for和v-if的时候，那么if具有更高的优先级 -->
      <!-- <li v-for="item in arr" v-if="item % 2">{{item}}</li> -->

      <!-- 最好的处理的方式是通过计算属性得到一个新的数组再循环 -->
      <li v-for="item in oddArr">{{item}}</li>
    </ul>

    <hr>

    <!-- 2. -->
    <!-- 当需要判断的这个条件和item没有关系的时候，可以一起使用 -->
    <!-- 还是建议在循环的标签外面套一层，在外层使用v-if -->
    <template v-if="show">
      <p v-for="item in arr2" >{{item}}</p>
    </template>
    
  </div>

  <script src="../Vue.js"></script>

  <script>
    const { createApp } = Vue;

    createApp({
      data() {
        return {
          arr: [1,2,3,4,5,6,7],
          arr2: ["a", "b", "c", "d"],
          show: false
        }
      },
      computed: {
        oddArr() {
          return this.arr.filter(item => item % 2)
        }
      }
    }).mount("#app")

  </script>
</body>
</html>